﻿using System;
using System.Collections.Generic;
using System.Text;

namespace ProtocolVN.Framework.Win
{
    public class RB1PhieuNguon2OrPhieuDich : RangBuocRule
    {
        long PHIEU_ID;
        PhieuType loaiPhieuCanKiemTra;
        PhieuType loaiPhieuCanTao;
        #region RangBuocRule Members

        public bool Check(PhieuType Src, long SrcID, List<object[]> LObj, PhieuType Des, long DesID, object DesObj, DevExpress.XtraGrid.Views.Grid.PLGridView DesGrid)
        {
            return false;
        }

        
        public RB1PhieuNguon2OrPhieuDich(long PHIEU_ID, PhieuType loaiPhieuCanKiemTra, PhieuType loaiPhieuCanTao)
        {
            this.PHIEU_ID = PHIEU_ID;
            this.loaiPhieuCanKiemTra = loaiPhieuCanKiemTra;
            this.loaiPhieuCanTao = loaiPhieuCanTao;
        }
        // Kiểm tra 1 phiếu chỉ tạo ra một phiếu
        public RB1PhieuNguon2OrPhieuDich(long phieuNguon_ID, PhieuType loaiPhieuCanTao)
        {
            this.PHIEU_ID = phieuNguon_ID;
            this.loaiPhieuCanKiemTra = loaiPhieuCanTao;
            this.loaiPhieuCanTao = loaiPhieuCanTao;
        }

        public List<InvalidInfo> Check()
        {
            List<InvalidInfo> ret = new List<InvalidInfo>();
            if (DAPhieuLienQuan.CheckChoPhepTaoPhieu(PHIEU_ID, loaiPhieuCanKiemTra, loaiPhieuCanTao))
            {
                ret.Add(new InvalidInfo("Đã tạo phiếu " + loaiPhieuCanKiemTra.GetTitle() + 
                    ".\n Cho nên không được tạo " + loaiPhieuCanTao.GetTitle(), "...", InvalidInfo.InvalidType.ERROR));                                
            }
            return ret;
        }

        #endregion
    }
}
